package jp.co.cyberagent.android.gpuvideo.util;

import android.view.Surface;

import jp.co.cyberagent.android.gpuvideo.OnCameraSizeChangeListener;


/**
 * @author wenjie
 */
public abstract class CameraLoader {

    protected OnCameraSizeChangeListener onCameraSizeChange;

    public abstract void onResume(int width, int height);

    public abstract void onPause();

    public abstract void switchCamera();

    public abstract int getCameraOrientation();

    public abstract boolean hasMultipleCamera();

    public void setOnCameraSizeChangeListener(OnCameraSizeChangeListener onCameraSizeChange) {
        this.onCameraSizeChange = onCameraSizeChange;
    }

    public abstract void setUpSurface(Surface surface);
}